home *** CD-ROM | disk | FTP | other *** search
/ Mobiclic 75 / MOBICLIC 75.ISO / pc / DATA / TCHATCHE / doggy75-84.cst / 00072_Script_évolutions sur menus.cst < prev    next >
Text File  |  2005-06-13  |  5KB  |  176 lines

  1. global traitLiaison,choix
  2.  
  3. on initMobile sPoint,remplacement
  4.   -- initialisation d'une procΘdure traitLaison
  5.   -- sPoint est le numΘro de la piste portant le point mobile (ex: acteur TrL Point de menu.cst)
  6.   -- remplacement : si 0 l'acteur de la piste sPoint est utilisΘ, 1 il est remplacΘ par l'acteur
  7.   -- de la piste s
  8.   
  9.   _player.cursor(290)
  10.   s = _player.currentSpriteNum
  11.   
  12.   x = _mouse.mouseH - sprite(s).locH
  13.   y = _mouse.mouseV - sprite(s).locV
  14.   x=0
  15.   y=0
  16.   
  17.   if the paramCount = 1 then
  18.     remplacement=0
  19.   end if
  20.   sound(2).play(member "poc")
  21.   sprite(sPoint).locH = _mouse.mouseH - x
  22.   sprite(sPoint).locV = _mouse.mouseV - y
  23.   
  24.   if remplacement = 1 then
  25.     sprite(sPoint).member = sprite(s).member
  26.   end if
  27.   sprite(sPoint).visible = 1
  28.   traitLiaison = [s,x,y]
  29.   updateStage
  30.   
  31. end
  32.  
  33. on initMobileTexte sPoint,remplacement
  34.   -- initialisation d'une procΘdure traitLaison
  35.   -- sPoint est le numΘro de la piste portant le point mobile (ex: acteur TrL Point de menu.cst)
  36.   -- remplacement : si 0 l'acteur de la piste sPoint est utilisΘ, 1 il est remplacΘ par l'acteur
  37.   -- de la piste s
  38.   
  39.   _player.cursor(290)
  40.   s = _player.currentSpriteNum
  41.   
  42.   x = sprite(s).width /2
  43.   y = sprite(s).height /2 
  44.   
  45.   if the paramCount = 1 then
  46.     remplacement=0
  47.   end if
  48.   sound(2).play(member "poc")
  49.   sprite(sPoint).locH = _mouse.mouseH - x
  50.   sprite(sPoint).locV = _mouse.mouseV - y
  51.   
  52.   if remplacement = 1 then
  53.     sprite(sPoint).member = sprite(s).member
  54.   end if
  55.   sprite(sPoint).visible = 1
  56.   traitLiaison = [s,x,y]
  57.   upDateStage
  58.   
  59. end
  60.  
  61. on initMobileV2 sPoint,piste1,remplacement
  62.   -- initialisation d'une procΘdure traitLaison
  63.   -- sPoint est le numΘro de la piste portant le point mobile (ex: acteur TrL Point de menu.cst)
  64.   -- remplacement : si 0 l'acteur de la piste sPoint est utilisΘ, 1 il est remplacΘ par l'acteur
  65.   -- de la piste s
  66.   -- piste1 : piste mobile de rang le plus bas  
  67.   cursor(290)
  68.   s = the currentSpriteNum  
  69.   x =  the mouseH - sprite(s).locH
  70.   y =  the mouseV - sprite(s).locV
  71.   
  72.   if getPos(choix,s-piste1+1)<>0 then
  73.     choix[getPos(choix,s-piste1+1)]=0
  74.   end if
  75.   if the paramCount =2 then
  76.     remplacement=0
  77.   end if
  78.   sound(2).play(member "poc")
  79.   sprite(sPoint).locH = _mouse.mouseH - x
  80.   sprite(sPoint).locV = _mouse.mouseV - y
  81.   
  82.   if remplacement = 1 then
  83.     sprite(sPoint).member = sprite(s).member
  84.   end if
  85.   afficherPistes sPoint
  86.   traitLiaison = [s,x,y]
  87.   _movie.upDateStage()  
  88. end 
  89.  
  90. on gestMobile pisteMobile
  91.   -- pisteMobile : piste du point mobile
  92.   -- la variable liste traitLiaison contient :
  93.   ---- 1 : piste de l'objet origine
  94.   ---- 2 : locH de l'objet origine
  95.   ---- 3 : locV de l'objet origine
  96.   sprite(pisteMobile).locH = _mouse.mouseH - traitLiaison[2]
  97.   sprite(pisteMobile).locV = _mouse.mouseV - traitLiaison[3]
  98.   _movie.upDateStage()
  99. end
  100.  
  101. on glisserDeposer s1,s2,s3,s4,mode
  102.   -- scripts de la version 1 mis α jour en syntaxe MX ******
  103.   -- s1 : est la piste cible de plus bas numΘro
  104.   -- s2 : est la piste cible de numΘro le plus ΘlevΘ
  105.   -- s3 : piste acteur α dΘplacer de plus bas numΘro
  106.   -- s4 : piste point en bout d'Θlastique
  107.   -- mode : l'objet dΘplacΘ est supprimΘ si valeur 1, laissΘ en place si 0
  108.   if the paramCount =3 then
  109.     mode = 0
  110.   end if
  111.   global traitLiaison, choix
  112.   if sprite(s4).visible = 1 then
  113.     _player.cursor(-1)
  114.     
  115.     s = traitLiaison[1]
  116.     repeat with i = s1 to s2
  117.       if sprite(s4).intersects(i) then
  118.         -- emplacement occupΘ ? ------------------------------------
  119.         if choix[i+1-s1]<>0 then
  120.           if mode = 1 then
  121.             sprite(s3-1+choix[i-s1+1]).visible=1
  122.           end if
  123.         end if
  124.         -- mise en place de l'ΘlΘment glissΘ -----------------------
  125.         sprite(i).member = sprite(s4).member
  126.         _movie.updateStage()
  127.         choix[i-s1+1] = s-s3+1
  128.         sprite(i).visible=1
  129.         if mode = 1 then
  130.           sprite(s).visible=0
  131.         end if
  132.         _movie.upDateStage()
  133.         sound(2).play(member "poc")
  134.         exit repeat
  135.       end if
  136.     end repeat
  137.     sprite(s4-2).visible=0
  138.     sprite(s4-1).visible=0
  139.     sprite(s4).visible = 0
  140.     -- l'ΘlΘment dΘposΘ n'est en intersection avec aucune zone
  141.     if i=1+s2 then
  142.       sound(2).play(member "echec")
  143.     end if
  144.   end if
  145. end
  146.  
  147. -- partie entiΦre d'un nombre
  148. on entiere nombre
  149.   chaine = string(nombre)
  150.   posVirgule = offset(".", chaine)
  151.   if posVirgule = 0 then
  152.     return nombre
  153.   else
  154.     return value(chaine.char[1..posVirgule])
  155.   end if
  156. end
  157.  
  158. -- partie fractionnaire d'un nombre
  159. on fraction nombre
  160.   chaine = string(nombre)
  161.   posVirgule = offset(".", chaine)
  162.   if posVirgule = 0 then
  163.     return 0
  164.   else
  165.     return value(chaine.char[posVirgule..chaine.char.count])
  166.   end if
  167. end
  168.  
  169. on nb2chiffres nombre
  170.   if nombre < 10 then
  171.     nb2 = "0" & string(nombre)
  172.   else
  173.     nb2 = string(nombre)
  174.   end if
  175.   return nb2
  176. end